Minimizing Synchronization Overhead in the Implementation of MPI One-Sided Communication
نویسندگان
چکیده
The one-sided communication operations in MPI are intended to provide the convenience of directly accessing remote memory and the potential for higher performance than regular point-to-point communication. Our performance measurements with three MPI implementations (IBM MPI, Sun MPI, and LAM) indicate, however, that one-sided communication can perform much worse than point-to-point communication if the associated synchronization calls are not implemented efficiently. In this paper, we describe our efforts to minimize the overhead of synchronization in our implementation of one-sided communication in MPICH-2. We describe our optimizations for all three synchronization mechanisms defined in MPI: fence, post-start-complete-wait, and lock-unlock. Our performance results demonstrate that, for short messages, MPICH-2 performs six times faster than LAM for fence synchronization and 50% faster for post-start-complete-wait synchronization, and it performs more than twice as fast as Sun MPI for all three synchronization methods.
منابع مشابه
Optimizing the Synchronization Operations in MPI One-Sided Communication∗
One-sided communication in MPI requires the use of one of three different synchronization mechanisms, which indicate when the one-sided operation can be started and when the operation is completed. Efficient implementation of the synchronization mechanisms is critical to achieving good performance with one-sided communication. Our performance measurements, however, indicate that in many MPI imp...
متن کاملOptimizing the Synchronization Operations in Message Passing Interface One-Sided Communication
One-sided communication in Message Passing Interface (MPI) requires the use of one of three different synchronization mechanisms, which indicate when the one-sided operation can be started and when the operation is completed. Efficient implementation of the synchronization mechanisms is critical to achieving good performance with one-sided communication. However, our performance measurements in...
متن کاملAn Evaluation of Implementation Options for MPI One-Sided Communication
MPI defines one-sided communication operations—put, get, and accumulate—together with three different synchronization mechanisms that define the semantics associated with the initiation and completion of these operations. In this paper, we analyze the requirements imposed by the MPI Standard on any implementation of one-sided communication. We discuss options for implementing the synchronizatio...
متن کاملAdaptive Strategy for One-Sided Communication in MPICH2
The one-sided communication model supported by MPI-2 can be more convenient to use than the two-sided communication model and has potential to provide better performance. The MPI-2 standard gives flexibility about when RMA operations can be issued and completed. The current MPICH2 implementation employs a lazy approach, in which operations are queued up and issued in the later synchronization p...
متن کاملDesign and Implementation of Key Proposed MPI-3 One-Sided Communication Semantics on InfiniBand
Simultaneous use of powerful system components is important for applications to achieve maximum performance on modern clusters. MPI-2 had introduced onesided communication model that enables for better communication and computation overlap. However, studies have shown limitations of this model both in the context of applications and higher-level libraries. As part of MPI-3 effort, the Remote Me...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004